package com.bookocean.infrastructure.persistence.po;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 小说参与者PO类
 * 
 * @author BookOcean
 * @since 2024-01-01
 */
@Data
@TableName("novel_participant_po")
public class NovelParticipantPO {

    /**
     * 参与者ID
     */
    @TableId(value = "participant_id", type = IdType.AUTO)
    private Long participantId;

    /**
     * 小说ID
     */
    @TableField("novel_id")
    private Long novelId;

    /**
     * 用户ID
     */
    @TableField("user_id")
    private Long userId;

    /**
     * 角色（1：创建者，2：参与者）
     */
    @TableField("role")
    private Integer role;

    /**
     * 加入顺序（用于多人协作轮次）
     */
    @TableField("join_order")
    private Integer joinOrder;

    /**
     * 贡献章节数
     */
    @TableField("chapter_count")
    private Integer chapterCount;

    /**
     * 最后写作时间
     */
    @TableField("last_write_at")
    private LocalDateTime lastWriteAt;

    /**
     * 加入时间
     */
    @TableField("joined_at")
    private LocalDateTime joinedAt;

    /**
     * 状态（0：已退出，1：正常）
     */
    @TableField("status")
    private Integer status;
}
